package koby99;

public interface J28_Interface {
	
	// 인터페이스 interface
	// 서비스 제공자service provider 와
	// 그것을 사용하는 client 간의 "계약"으로 간주
	
	// 인터페이스의 구성원으로 추상메서드와 상수 멤버변수만 선언가능
	// 인터페이스의 멤버변수에는 public, static, final만 
	// 사용가능, 그외는 사용불가 단, 생략은 가능
	// 또한, 초기화도 필요 
	// 인터페이스의 메서드에는 public, abstract 만 사용 가능
	// 그외 사용불가 단, 생략은 가능

	// 멤버 변수 (모두 동일 의미이다. 즉, 생략됬다는 의미[A=E])
	int A = 1;
	final int B = 2;
	static int C = 3;
	static final int D = 4;
	public static final int E = 5;
	
	// 몸체없는 메서스 - 추상 메서드 (역시 모두 동일 의미)
	void sayHello1();
	public void sayHello2();
	public abstract void sayHello3();
	
}
